﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Administracion;
using System.Data;
using Generico.Coneccion;

namespace Administracion
{
    public partial class NewsLetter : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {



            var _FileBrowser = new CKFinder.FileBrowser { BasePath = "../ckfinder/" };
            _FileBrowser.SetupCKEditor(this.txtContenido);
          
            if (!this.IsPostBack)
            {
                cargardatos();
                var id = Request.QueryString["id"];
                if (id != "0")
                {
                    var cn = new ClsConeccion();
                    cn.Abrir();
                    cn.AgregarParametros("idArticulo", Convert.ToInt32(id));
                    var dr = cn.EjecutarSpDataReader("spGetArticulo");
                    while (dr.Read())
                    {
                        this.txtTitulo.Text = dr["Titulo"].ToString();
                        this.txtCopete.Text = dr["Copete"].ToString();
                        this.txtContenido.Text = dr["Contenido"].ToString();
                        this.txtResumen.Text = dr["Resumen"].ToString();
                        this.txtAutor.Text = dr["Autor"].ToString();
                        this.ddTemas.SelectedValue = dr["Tema"].ToString();
                        this.ddSubTemas.SelectedValue = dr["SubTema"].ToString();
                        this.txtTituloResumen.Text = dr["TituloResumen"].ToString();
                        this.txtBajaPublicacion.Text = dr["FechaBajaPublicacion"].ToString();
                        this.dropSeccion.SelectedValue = dr["Seccion"].ToString();
                        this.dropPublicidad.SelectedValue = dr["Publicidad"].ToString();
                        this.dropPublicacion.SelectedValue = dr["OrdenPublicacion"].ToString();
                        this.txtValoracion.Text= dr["Valoracion"].ToString();
                        this.txtComplejidad.Text = dr["Complejidad"].ToString();
                        this.txtFace.Text = dr["FACE"].ToString();
                        this.txtTwitter.Text = dr["TWIT"].ToString();
                    }

                    cn.Cerrar();
                    Button1.Visible = true;
                }
            }
        }

        protected void Guardar_Click(object sender, EventArgs e)
        {
            var id = Request.QueryString["id"];
            var cn = new ClsConeccion();
            cn.Abrir();
            if (id != "0") { cn.AgregarParametros("ID", Convert.ToInt32(id)); }
            
            cn.AgregarParametros("Titulo", txtTitulo.Text);
            cn.AgregarParametros("Copete", txtCopete.Text);
            cn.AgregarParametros("Resumen", txtResumen.Text);
            cn.AgregarParametros("Contenido", txtContenido.Text);
            cn.AgregarParametros("Publicidad", this.dropPublicidad.SelectedValue.ToString());
            cn.AgregarParametros("OrdenPublicacion", this.dropPublicacion.SelectedValue.ToString());
            cn.AgregarParametros("Seccion", this.dropSeccion.SelectedValue.ToString());
            cn.AgregarParametros("Autor", this.txtAutor.Text);
            cn.AgregarParametros("Tema", Convert.ToInt32(this.ddTemas.SelectedValue));
            cn.AgregarParametros("SubTema", Convert.ToInt32(this.ddSubTemas.SelectedValue));
            cn.AgregarParametros("TituloResumen", txtTituloResumen.Text);
            cn.AgregarParametros("FechaBajaPublicacion", (txtBajaPublicacion.Text.Length <= 0) ? Convert.ToDateTime("1901/01/01"): Convert.ToDateTime(txtBajaPublicacion.Text));
            cn.AgregarParametros("Valoracion", (txtValoracion.Text.Length <= 0) ? 0 : Convert.ToInt32(this.txtValoracion.Text));
            cn.AgregarParametros("Complejidad", (txtComplejidad.Text.Length <= 0) ? 0 : Convert.ToInt32(txtComplejidad.Text));
            cn.AgregarParametros("linkface", this.txtFace.Text);
            cn.AgregarParametros("linkTwit", this.txtTwitter.Text);
            if (id != "0")
            {
                cn.EjecutarSp("spUpdateArticulo");
            }
            else
            {
                cn.EjecutarSp("spNewArticulo");
            }
            cn.Cerrar();

            Response.Write("<script> alert('Se ha guardado correctamente');</script>");
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            txtTitulo.Enabled = false;
        }

        private string DeleteSize(string strHtml)
        {
            int pos = strHtml.IndexOf("width:");
            string straux = strHtml.Substring(pos);
            string straux2 = strHtml.Substring(0, pos-1);
            pos = straux.IndexOf(";");
            straux = straux.Substring(pos+1);
            pos = straux.IndexOf("\"");
            straux = straux.Substring(pos);
            return straux2 + straux;
        }
        private void cargardatos()
        {
            var cn = new ClsConeccion();
            cn.Abrir();
            string sql = "Select * From SubTemas";
            var rd = cn.EjecutarSqlDataReader(sql);
            var dt = new DataTable();
            dt.Load(rd);
            ddSubTemas.DataSource = dt;
     
            this.ddSubTemas.DataTextField = "SubTemas";
            this.ddSubTemas.DataValueField = "idSubTemas";
            this.ddSubTemas.DataBind();

            
            string sql1 = "Select * From Temas";
            var rd1 = cn.EjecutarSqlDataReader(sql1);
            var dt1 = new DataTable();
            dt1.Load(rd1);
            ddTemas.DataSource = dt1;
            ddTemas.DataTextField = "Temas";
            ddTemas.DataValueField = "idTema";
            ddTemas.DataBind();

            var id = Request.QueryString["id"];
            string sql2 = "Select id, Usuario + ' - '  + Convert(varchar(10),Fecha,112)  Ident  From Comentarios where idArticulo = " + id;
            var rd2 = cn.EjecutarSqlDataReader(sql2);
            var dt2 = new DataTable();
            dt2.Load(rd2);
            lstComentarios.DataSource = dt2;
            lstComentarios.DataTextField = "Ident";
            lstComentarios.DataValueField = "id";
            lstComentarios.DataBind();
            cn.Cerrar();
            
        }

        protected void ddTemas_SelectedIndexChanged(object sender, EventArgs e)
        {
            
        }

        protected void txtValoracion_TextChanged(object sender, EventArgs e)
        {

        }

        protected void btnEliminarComentario_Click(object sender, EventArgs e)
        {
            var cn = new ClsConeccion();
            cn.Abrir();
            var id = Request.QueryString["id"];
            string sql2 = "Delete Comentarios where idArticulo = " + id + " and id = " + lstComentarios.SelectedValue ;
            cn.EjecutarSql(sql2);
            
            Response.Write("<script> alert('Se ha eliminado correctamente');</script>");
            cn.Cerrar();
        }


    }
}
